package com.example.file_management.pojo.material;

import com.example.file_management.pojo.material.Task;
//import jakarta.persistence.*;
import lombok.Data;  // Lombok注解：生成getter、setter、toString、equals和hashCode方法
import lombok.NoArgsConstructor; // Lombok注解：生成无参构造函数
import lombok.AllArgsConstructor; // Lombok注解：生成全参构造函数

import java.time.LocalDateTime;

// TODO：注意需要检查驼峰映射

//@Entity
//@Table(name = "selfcheck_table")
@Data  // Lombok注解：自动生成getter、setter、toString、equals、hashCode方法
@NoArgsConstructor // Lombok注解：生成无参构造函数
@AllArgsConstructor
public class SelfCheck {
//    @Id
//    @GeneratedValue(strategy = GenerationType.IDENTITY)
    private Integer selfCheckID;

//    @ManyToOne
//    @JoinColumn(name = "TaskID", nullable = false)
    private Task task;

//    @Column(nullable = false, length = 255)
    private String checkName;

//    @Column(columnDefinition = "TEXT")
    private String checkDescription;

//    @Enumerated(EnumType.STRING)
//    @Column(nullable = false)
    private CheckStatus checkStatus;

//    @Column(nullable = false)
    private LocalDateTime checkDate;

    public enum CheckStatus {
        NOT_STARTED, IN_PROGRESS, COMPLETED
    }
}

